const fs = require('fs');

// 使用 回调 api
fs.readFile('nginx.log',(err,data) => {
    if(err) {
        console.error(err);
        return;
    }

})

console.log('-------');

// 使用基于 promises api
const fs_promise = require('fs/promises');
fs_promise.readFile('./2020-12-13.log')
    .then(data => {
        console.log(data.toString());
    },err => {
        console.error(err);
    })
    

console.log('-------');




// 使用同步 api
try {
    fs.readFileSync('nginx.log');
    
} catch(e) {
    console.log(e.name,':');
}


console.log('-------');

// 使用 util promisify 将 回调转换为 promise api
const {promisify} = require('util')
const readFile = promisify(fs.readFile);
readFile('./2020-12-13.log')
    .then(data => {
        console.log('promisify:',data);
    })
    .catch(err => {
        console.error(err.name,err.message,err);
    })
console.log();